Principles for Developing and Measuring High-performance Web Servers over ATM
نویسندگان
چکیده
High-performance Web servers are essential to meet the growing demands of the Internet. Satisfying these demands requires a thorough understanding of the key factors that affect Web server performance. This paper provides three contributions to the design, implementation, and evaluation of high-performance Web servers. First, we report the results of a comprehensive empirical study of popular high-performance Web servers (such as Apache, Netscape Enterprise, PHTTPD, and Zeus) over high-speed ATM networks. This study illustrates their relative performance and identifies their performance bottlenecks. To measure performance accurately, we developed a new benchmarking technique that subjects Web servers to varying connection frequencies. We found that once network and disk I/O overheads are reduced to negligible constant factors, the main determinant of Web server performance is the concurrency strategy employed by the server. Moreover, no single strategy performs optimally for all load conditions and traffic types. Second, we describe the performance optimizations used to develop our a high-performance Web server: JAWS. JAWS is an object-oriented Web server that was explicitly designed to alleviate the performance bottlenecks we identified in existing Web servers. It consistently outperforms every server in our test suite. The performance optimizations used in JAWS include adaptive pre-spawned threading, intelligent caching, and prioritized request processing. Third, we outline the design principles and concurrency patterns of JAWS, focusing on its novel object-oriented software architecture. This architecture substantially improves the portability and flexibility of JAWS, relative to other Web servers. For instance, JAWS can configure itself automatically at run-time or installation-time to use the most efficient concurrency strategy for a given OS platform. In addition, JAWS can be configured to support multiple transport protocols (such as HTTP/1.0 and HTTP/1.1). Our work illustrates 1Funding provided by Object Technologies International and by Eastman Kodak Company, Rochester, N.Y.. that highly efficient communication software is not antithetical to highly flexible software.
منابع مشابه
Techniques for Developing and Measuring High Performance Web Servers over High Speed ATM Networks
High-performance Web servers are essential to meet the growing demands of the Internet and large-scale intranets. Satisfying these demands requires a thorough understanding of key factors affecting Web server performance. This paper presents empirical analysis illustrating how dynamic and static adaptivity can enhance Web server performance. Two research contributions support this conclusion. F...
متن کاملTechniques for Developing and Measuring High Performance Web Servers over High Speed Networks
High-performance Web servers are essential to meet the growing demands of the Internet and large-scale intranets. Satisfying these demands requires a thorough understanding of key factors affecting Web server performance. This paper presents empirical analysis illustrating how dynamic and static adaptivity can enhance Web server performance. Two research contributions support this conclusion. F...
متن کاملThe Object-Oriented Design and Performance of JAWS A High-performance Web Server Optimized for High-speed Networks
This paper provides two contributions to the study of highperformance object-oriented (OO) Web servers. First, it outlines the design principles and optimizations necessary to develop efficient and scalable Web servers and illustrates how we have applied these principles and optimizations to create JAWS. JAWS is a high-performance Web server that is designed to alleviate overheads incurred by e...
متن کاملThe Object-Oriented Design and Performance of JAWS: A High-performance Web Server Optimized for
This paper provides two contributions to the study of highperformance object-oriented (OO) Web servers. First, it outlines the design principles and optimizations necessary to develop efficient and scalable Web servers and illustrates how we have applied these principles and optimizations to create JAWS. JAWS is a high-performance Web server that is explicitly designed to alleviate overheads in...
متن کاملMeasuring the Impact of Event Dispatching and Concurrency Models on Web Server Performance Over High-speed Networks
This paper provides two contributions to the study of highperformance Web servers. First, it outlines the optimizations necessary to build efficient and scalable Web servers and illustrates how we’ve applied some of these optimizations to create JAWS. JAWS is a high-performance Web server that is explicitly designed to alleviate overheads incurred by existing Web servers on high-speed networks....
متن کامل